Crossbar waveform driver circuit

ABSTRACT

A driving waveform circuit includes a crossbar array having input columns and output rows wherein the crossbar array is configured to store data in the form of high or low resistance states, delay timing circuitry electrically connecting an input signal to the input columns of the crossbar array and configured to provide a relative delay timing between the input signal and each input column, and summation circuitry electrically connected to the output rows of the crossbar array for generating one or more output signals based on the stored resistance state data and the input signal. The driving waveform circuit is taught to be applied as inkjet printing drivers, micromirror drivers, robotic actuators, display device drivers, audio device drivers, computational device drivers, and counters.

This patent application is a Continuation-In-Part of U.S. patentapplication Ser. No. 11/790,495, filed Apr. 26, 2007, which is aContinuation of U.S. Pat. No. 7,302,513, filed Apr. 3, 2006.

FIELD OF THE INVENTION

The present invention pertains to a waveform driving circuit using acrossbar switching architecture. Applications of the driving circuit aretaught for robotic actuators, inkjet drivers, digital displays drivers,audio device drivers, computational device drivers, and counters.

BACKGROUND OF THE INVENTION

As disclosed in parent U.S. Pat. No. 7,302,513, which is incorporated byreference in its entirety, crossbar circuit architectures may beconfigured to provide for programmable signal processors. The presentpatent application provides further embodiments of such systems toprovide waveform driving circuitry.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a cross-section of one example of a crossbar circuitelement.

FIG. 2 illustrates a cross-section of one example of a reprogrammablecrossbar circuit element using conductive wiring layers.

FIG. 3 illustrates a cross-section of one example of a reprogrammablecrossbar circuit element using doped semiconductor wire layers.

FIG. 4 illustrates a crossbar driving waveform circuit in accordancewith the present invention.

FIG. 5 illustrates one example of the crossbar driving waveform circuitconfigured for both amplitude and timing adjustments for a single outputdrive signal.

FIG. 6 illustrates examples of output driving signals for differentprogrammed states of the crossbar in the circuit of FIG. 5 provided witha periodic input signal.

FIG. 7 illustrates one example of the crossbar driving waveform circuithaving multiple output drive signals.

FIG. 8 illustrates one possible application of the crossbar waveformdriving circuit in an inkjet printing device.

FIG. 9 illustrates one possible application of the crossbar waveformdriving circuit as a micromirror driver.

FIG. 10 illustrates one possible application of the crossbar waveformdriving circuit as a piezoelectric actuator driver.

FIG. 11 illustrates one possible application of the crossbar waveformdriving circuit in an electromagnetic motor driver.

FIG. 12 illustrates one possible application of the crossbar waveformdriving circuit in an electro-optic device driver.

FIG. 13 illustrates one possible application of the crossbar waveformdriving circuit in an acoustic device driver.

FIG. 14 illustrates one possible application of the crossbar waveformdriving circuit in a logic device driver.

FIG. 15 illustrates one possible application of the crossbar waveformdriving circuit in a counting device.

DETAILED DESCRIPTION

FIG. 1 illustrates a cross-section of one example of a crossbar circuitelement as described in U.S. Pat. No. 7,302,513. The basic function ofthe crossbar structure is to provide programmable diode switches inwhich each intersection of the crossbar array is switchable between ahigh resistance state and a low resistance state. The basicconfiguration of FIG. 1 illustrates a pn-junction rectification layer102 formed of a silicon wafer doped with p-type material on one side andn-type material on the opposite side. A set of parallel input wires 101is patterned on the p-doped side of the wafer. The input wiring 101 maybe formed of metallic wiring or highly p-doped polysilicon so as toprovide an array of electrically conductive wires directed into theplane as illustrated in FIG. 1. Similarly, output wiring array 103 ispatterned on the n-doped side of the wafer. The output wiring array 103may be formed of metallic wiring or highly n-doped polysilicon so as toprovide an array of electrically conductive wires directed orthogonallyto wiring array 101. Material layer 104 is a resistance switchingmaterial layer such as a rotaxane molecular film, a chalcogenidematerial, a perovskite material, TCNQ material or any equivalentresistance switching material which are generally employed in a varietyof non-volatile resistive RAM designs such as Nagasubramanian et al.U.S. Pat. No. 5,272,359, Kuekes et al. U.S. Pat. No. 6,128,214, Hsu etal. U.S. Pat. No. 6,531,371, and Campbell U.S. Pat. No. 6,867,996, eachor which is incorporated by reference in their entirety. It is notedthat the crossbar structure of FIG. 1 is only one of many possibleimplementations of the crossbar structure usable in the currentinvention and other designs are conceivable such as via the use ofSchottky diode junctions instead of pn-junctions or a nanowire crossbarconstruction such as taught by Kuekes et al. U.S. Pat. No. 6,128,214. Inaddition, modifications of the structure may be made to improveperformance such as etching the regions of the p-doped side of the waferbetween the wiring 101 and etching the regions of the n-doped wiringbetween the wiring array 103 in order to prevent crosstalk betweendifferent wiring portions. As an alternative modification the dopingconcentration between the wiring or spacing between the wiring may beadjusted so as to increase resistance and reduce crosstalk betweenadjacent wires in wire arrays 101 and 103. Also, if material 104 hasintrinsic rectification properties, rectification layer 102 may beexcluded altogether. Yet another route to programmable diode crossbarstructures may be obtained using nanowire interconnects in anelectrolytic medium as described by Lee et al. U.S. Pat. No. 7,358,524so that pn-junction nanowires may form the material 104 between anodewires and cathode wires forming the crossbar.

FIG. 2 illustrates a cross-section of one example of a reprogrammablecrossbar circuit element using conductive wiring layers as described inU.S. Pat. No. 7,302,513. This design allows for reconfiguration of theresistance state of the material layer 204 by a dual crossbar structureformed of first input wiring array 201 a, first rectification layer 202a, first output wiring array 203 a in a first crossbar section andsecond input wiring array 201 b, second rectification layer 202 b, andsecond output wiring array 203 b in a second crossbar section withresistance programmable material 204 formed between the two crossbarsections. Depending on the material used for 204 programming of theresistance switching material from a high to low resistance state at aparticular intersection of the crossbar may be performed by applying avoltage higher than a threshold value between a selected input wire ofarray 201 b and an output wire of array 203 a while reversal of aprogrammed low resistance state may be performed by applying a voltagehigher than a threshold voltage between a selected input wire of array201 a and an output wire of array 203 b. Material 204 should preferablybe chosen to include some rectification properties to avoid electricalfeedback paths within the crossbar formed by wiring 201 a and 201 balthough this may not be necessary depending on the application. Theinput wiring layers 201 a and 201 b may also be formed of highly p-dopedpolysilicon to assist in avoiding the creation of electrical feedbackpaths.

FIG. 3 illustrates a cross-section of another example of areprogrammable crossbar circuit element using doped semiconductor wirelayers formed using bulk processing instead of surface processing of asilicon wafer. A dual crossbar structure is formed of first input wiringarray 301 a of highly p-doped parallel lines, first rectification layer302 a, first output metallic wiring array 303 a in a first crossbarsection and second input wiring array 301 b of highly p-doped parallellines, second rectification layer 302 b, and second output metallicwiring array 303 b in a second crossbar section with resistanceprogrammable material 304 formed between the two crossbar sections.

Additional teachings regarding programming crossbar architectures aswell as related resistance switching devices are found in the parentU.S. Pat. No. 7,302,513 as well as prior art such as Rinerson et al.U.S. Pat. No. 6,940,744 and Ovshinsky et al. U.S. Pat. No. 5,912,839.

FIG. 4 illustrates a crossbar driving waveform circuit in accordancewith the present invention including delay timing circuitry electricallyconnected to columns of a resistance switching crossbar array havingrows connected to summation circuitry. The delay timing circuitry may beimplemented in hardware or from software as part of a general purposemicroprocessor to produce drive signal pulses input with relative delayoffsets to columns of the crossbar array.

FIG. 5 illustrates one particular example of a crossbar driving waveformcircuit configured for both amplitude and timing adjustments for asingle output drive signal V_(in)(t). The rows j of a resistance switchcrossbar array are connected to the inverting terminal of an operationalamplifier 502 via an array of weighting resistors and the columns i ofthe crossbar array are connected to input signal V_(in)(t) via fixeddelay elements 501. Connecting a feedback resistance R_(f) between theoutput of the operational amplifier 502 and the inverting terminalestablishes negative feedback leading to the inverting terminal beingdriven to the same potential as the non-inverting terminal. Based onconservation of current the sum of the currents at the invertingterminal should be zero leading to Eq. 1 below:

$\begin{matrix}{\frac{V_{out}(t)}{R_{f}} = {- {\sum\limits_{j}^{\;}\; {I(j)}}}} & ( {{Eq}.\mspace{14mu} 1} )\end{matrix}$

where I(j) are the currents coming in from the crossbar rows andV_(out)(t) is the output signal. The currents from each of the crossbarrows may be derived based on the superposition of currents from eachintersection of the crossbar array. For each intersection of thecrossbar the equivalent voltage is calculated based on the ratio of theThevenin equivalent voltage divided by the Thevenin equivalentresistance. The equivalent voltage is the input voltage to the crossbarcolumn V(i) reduced by the voltage loss due to rectification effectsinherent to the crossbar array structure. The equivalent resistance iscalculated based on the sum of the resistance of the resistanceswitching material at each crossbar intersection r(i,j) and theweighting resistance for the row given by R(j). The resultant currentsfrom the crossbar rows are thus computed as:

$\begin{matrix}{{I(j)} = {\sum\limits_{i}^{\;}\; \frac{{V(i)} - V_{rect}}{{r( {i,j} )} + {R(j)}}}} & ( {{Eq}.\mspace{14mu} 2} )\end{matrix}$

By providing a periodic rectangular pulse having a period T as the inputsignal V_(in)(t) and forming the delay elements each with a fixed delayequal to T/N, where N is the number of columns of the crossbar, theinput voltage to the i^(th) column may be expressed as:

V(i)=V _(in)(t−(i−1)T/N)   (Eq.3)

As illustrated in FIG. 5, the weighting resistances of the crossbar rowsare tuned to the following values:

R(j)=2^(j) R _(f) −r   (Eq.4)

where R_(f) is the value of the feedback resistance of the op-amp and ris the average low resistance state of the resistance switching materialof the crossbar array. Combining (Eq.1)-(Eq.4) the overall output signalis:

$\begin{matrix}{{V_{out}(t)} = {- {\sum\limits_{ij}^{\;}\; \frac{{V_{in}( {t - {( {i - 1} ){T/N}}} )} - V_{rect}}{2^{j} + {( {{r( {i,j} )} - r} )/R_{f}}}}}} & ( {{Eq}.\mspace{14mu} 5} )\end{matrix}$

Thus for intersections of the crossbar array programmed with lowresistance states r(i,j)=r, the denominator of (Eq.5) reduces to 2^(j).For intersections of the crossbar array programmed with high resistancestates r(i,j)>>R_(f), the denominator of Eq. 5 reduces to zero.

FIG. 6 illustrates some examples of output driving signals for differentprogrammed states of the crossbar in the circuit of FIG. 5 provided witha periodic input signal (a) having a period T and a pulse width of T/8.In example (b) a single row of crossbar resistances is programmed with alow resistance state to produces a constant amplitude output signal. Inexample (c) each column of the crossbar is set to a different stateproducing increasing amplitudes for the pulses. In example (d) the firstand third columns are programmed with the same first resistance statesand the second and fourth columns are programmed with the same secondresistance states. In example (e) the first and third columns areprogrammed with the same resistance states and the second and fourthcolumns are programmed to have all high resistance states. It is notedthat while the output voltages from the op-amp have an invertedpolarity, an inverting voltage follower circuit may be provided toprovide a positive polarity drive voltage waveform.

In the above described configuration by selectively setting theresistances of the crossbar array both the amplitude and the pulseposition of a waveform may be programmed. Using binary values of 0 and 1to represent high and low resistance states of the crossbar a 4×4 matrixcontaining binary values may be used to represent an arbitraryprogrammed state of the waveform generator. The total number ofdifferent producible waveforms based on this circuit is thus 2¹⁶=65,536waveforms. In the more general case 2^(N×M) waveform states areachievable where N is the number of crossbar columns and M is the numberof crossbar rows and the number of possible producible waveforms thusincreases exponentially with the crossbar size. Predetermined waveformpatterns may be stored in a memory in the form of binary matrices andused to program the resistance states of the crossbar in accordance withdifferent modes of operation in a particular application. The binarymatrices may also be altered in accordance with variation inenvironmental or usage conditions. For example, variations intemperature may change load parameters for a particular driven circuitelement which may be compensated by a change in voltage amplitude for aparticular drive waveform. Aging or frequency of use may similarly alterload parameters of a voltage driven element requiring adjustment of thedrive waveform. The provision of environmental sensors may providefeedback to properly select appropriate binary matrices based oncomparison of the sensed condition to predetermined thresholds. Usingprinciples from genetic algorithms or other adaptive or evolutionaryprogramming techniques the binary matrices of the crossbar may also beevolved over time to achieve a predetermined objective.

FIG. 7 illustrates another example of a resistance switching crossbardriving waveform circuit having multiple output drive signals instead ofa single output drive signal. In this example, delay circuit elements701 are provided separately for independent input signals V_(in1)(t),V_(in2)(t), V_(in3)(t), and V_(in4)(t) of the crossbar columns whiledifferent op-amps 702 are provided for different rows of the crossbar toproduce independent output signals V_(out1)(t), V_(out2)(t), andV_(out3)(t). In this case weighting resistances R₁, R₂, R₃ determine thevoltage amplitudes of the output signals from each row. In the circuitof FIG. 7 the relative timing of drive pulses provided to differentdriven elements may be changed by altering the binary matrices. Forexample, a single low resistance state may be provided for each row andthe position of the low resistance state within the row may be switchedto achieve alignment, ordering, or coordination between the effects ofthe driven elements.

FIG. 8 illustrates one possible application of the crossbar waveformdriving circuit of the present invention in an inkjet printing device.It is generally known in the art of inkjet printing to apply pulsevoltages to an actuator element to eject ink. For example, thin filmresistors are used to eject ink in bubble jet thermal inkjet deviceswhile piezoelectric actuators are used to eject ink in piezoelectricinkjet printers. Dependent on the type of ink and size of ink dropsbeing ejected the drive waveforms of the actuator elements may need tobe adjusted. In addition timing adjustments of the drive waveforms formultiple actuator elements can provide drop alignment correction andcompensation for ejector failure. Alteration of the crossbar resistancesof the crossbar waveform generator can provide such adjustments.

FIG. 9 illustrates one possible application of the crossbar waveformdriving circuit as a micromirror driver. It is generally known to useone or more micromirrors as optical switching devices for projector anddisplay applications. These micromirrors are often controlled byelectrostatic actuators which may be driven by the crossbar waveformgenerator of the present invention in which alteration of the crossbarresistances of the crossbar waveform generator can control the timing ofactuation of one or more micromirrors to change the path of light forsuch applications.

FIG. 10 illustrates one possible application of the crossbar waveformdriving circuit as a piezoelectric actuator driver. This may beimplemented in a micro-robotic system or a micro-positioning system inwhich optical sensor feedback is used to determine an appropriate binarymatrix for a crossbar driving circuit used to control the piezoelectricactuator.

FIG. 11 illustrates one possible application of the crossbar waveformdriving circuit in an electromagnetic motor driver. Alterations of thebinary matrix of the crossbar resistance states may be used to changethe frequency of drive pulses for an ac motor or the voltage amplitudeof a drive pulse for a dc motor. This may be implemented in a roboticsystem in which optical sensor feedback is used to determine anappropriate binary matrix for a crossbar driving circuit driving one ormore motors that control the movement of joints of a robot.

FIG. 12 illustrates one possible application of the crossbar waveformdriving circuit in an electro-optic device driver. The electro-opticelements may take the form of one or more LED elements, LCD elements, orelectrophoretic cells used as indicators or as components of electronicdisplays or electronic paper. Alteration of the binary matrix of thecrossbar resistance states may change an ordering of actuation of suchelectro-optic elements used in a variable display application.

FIG. 13 illustrates one possible application of the crossbar waveformdriving circuit in an acoustic device driver. In this case the crossbarresistance states may be programmed to be representative of music orsounds with the waveform produced by the crossbar waveform drivingcircuit driving one or more acoustic transducers to produce the music orsounds.

FIG. 14 illustrates one possible application of the crossbar waveformdriving circuit in a logic device driver. For example, in a computingdevice the pulses of one or more waveforms produced by the crossbarwaveform driving circuit may be representative of timing signals used tocarry out a series of computational operations. Alteration of thecrossbar resistance states may provide for reconfigurable computing.

FIG. 15 illustrates one possible application of the crossbar waveformdriving circuit in a counting device. For example, using relative timingdelays of various orders of magnitude (e.g. 1 microsecond, 1millisecond, 1 second, 1 minute, 1 hour, etc.) for the delay timingcircuitry, a programmable timer may be formed from the crossbar waveformdriving circuit forming the basis of a clocking circuit used insynchronous or asynchronous counters.

As described above the crossbar driving waveform circuit may be appliedin a variety of applications and a variety of modifications may be madeto the systems as described above. For example, the delay values betweenthe signals input to the columns of the crossbar array may beprogrammable to provide further adjustment of the output waveform anddifferent pulse widths, amplitudes, and frequencies may be used for theinput signals. Depending on the application the input pulses may beperiodic or non-periodic waveforms. While FIG. 6 illustrates an examplein which the waveforms output from the crossbar array arenon-overlapping, overlapping waveform outputs are also be produced suchas illustrated in U.S. Pat. No. 7,302,513 (FIGS. 10a and 10b). In orderto expand the range of waveforms that may be generated by the crossbardriving waveform circuit integrator circuitry may be provided at theoutput to provide sloped or triangular waveforms. Comparison orfiltering circuitry may also be provided at the output to remove dcvoltage offsets or noise. While exemplary sizes of the crossbar areshown as 4×4 and 4×3 in FIGS. 5 and 7 a number of different crossbarsizes may also be implemented such as 2×2, 2×3, 3×2, . . . , 10×10, etc.For nanowire crossbar arrays the wires may have a width less than 100 nmformed by a nanoimprint lithography or self-assembly process. Thisoffers the benefit of a high density crossbar but at the cost of higherresistance levels due to lower cross-sectional area for the crossbarstates at each wire intersection and a larger possibility of defects inthe nanowires. Larger widths (>100 nm) may be formed for the crossbarwiring using optical lithography methods or other processes common tosemiconductor fabrication to produce lower relative resistance levelsdue to the higher cross-sectional area at each crossbar intersection.

In the various embodiments described herein adaptive programming of thebinary matrix resistance states of the crossbar may be performed inaccordance with a software routine to optimize the functioning of thewaveform produced. For example, in the embodiment of FIG. 5 smalladjustments of the amplitude of the output voltage relative to the inputvoltage amplitude may be achieved by switching the states of the lowestrow having a weighting resistance of 16R_(f)-r from high resistance tolow resistance states. Larger adjustments of the amplitude may beachieved by altering the rows having lower values of weightingresistors. Sequential alteration of the resistance states of the lowerrows to the upper rows may be used as part of a hill climbing algorithmin which an attribute of a driven element to which the output drivewaveform is applied is compared or tested against some predeterminedcriteria. The resistance states are maintained in the modifiedresistance state if an improvement in the output waveform relative tothe predetermined criteria is found. However, if the modified resistancestate is detrimental to the tested attribute the resistance may beswitched back to the original state. The resistance states may beswitched and tested one column at a time, one row at a time, or byindividual crosspoint intersections of the crossbar array until a bestpossible drive waveform for achieving a desired result from the drivenelement is identified.

Genetic algorithms are another software methodology which may be used tooptimize the waveform. In this software method large population ofpotential binary matrix resistance states may be initially established.In general 2^(N×M) possible members of the population are possible for acrossbar with N columns and M rows programmed with binary resistancestates. For example, a 10×10 crossbar will have approximately 10³⁰possible drive waveform states. A selection of a portion of these statesmay represent a first generation of binary matrix resistance statesprogrammed into the crossbar array. Comparing one or more outputs ofdriven elements based on the first generation to predetermined criteria,a subset of the first generation producing the best results may beselected. This subset may be recombined to create a second generation ofbinary matrix resistance states by mixing the highest performing rowstates with other high performing row states or mixing the highestperforming column states with other high performing column states. Thisprocess may be repeated to create further generations in accordance withknown methods of genetic algorithms optionally including other stepssuch as random mutation that adds states not within the currentgeneration to provide variability in the optimization.

It is noted that hill climbing and genetic algorithm optimizationtechniques described above may be particularly useful in robotic andartificial intelligence applications. For example, the predeterminedcriteria being tested may be the movement of a robotic system detectedby an optical imaging sensor such as a CCD, CMOS, or crosswire sensorarray. The robotic system may include various motors in whichcoordination of sequential actuation is required to perform functionssuch as picking up an object or moving robotic wheels or legs over anon-uniform surface. Using an optimizing algorithm and feedback based onthe optical imaging sensor the resistance states of the crossbar may bereprogrammed so that the robotic system can learn to perform variousdifferent desired functions or movements in accordance with differentsensed images. Over time a mapping between various sensed images and theoptimized crossbar binary resistance states representative of therobotic movement or action may be developed and stored in a look-uptable memory. These mappings may be shared between multiple roboticsystems having the same or similar configuration using wireless, fiberoptic, or cable communication so as to share learning between therobotic systems.

Alteration of the resistance states of a crossbar control circuits asdescribed above may also be initiated by a change in an environmentalcondition, such as by detecting temperature, motion, sound, a change inweight, or detection of one or more chemicals. This is useful tooptimize the waveform driving circuits to particular environmentalconditions. For example, under different temperature ranges resistancevalues of a driven load may alter which can affect the desiredperformance of the waveform driving circuit. The crossbar resistancesmay be adjusted to compensate for such temperature induced changes. Inother cases, a detection of motion, sound, or certain chemicalcompositions may require a certain signal processing task to be achievedin applications involving robotics, security systems, or safety systems.Binary matrix values stored in a look-up table of a memory device may beprogrammed into crossbar waveform driving circuits according todifferent sensed ranges of temperature, sound, motion, or chemicals. Ofcourse, in addition to automatic reprogramming of the resistance statesof the crossbar, manual reprogramming via a user interface may beperformed.

As described above many modifications of the present invention arepossible and many applications are possible. The present invention isonly limited by the following claims.

1. A driving waveform circuit including a crossbar array having inputcolumns and output rows wherein the crossbar array is configured tostore data in the form of high or low resistance states; delay timingcircuitry electrically connected to the input columns of the crossbararray and configured to provide a relative delay timing between inputsignals of each input column; and summation circuitry electricallyconnected to the output rows of the crossbar array for generating one ormore output signals based on the stored resistance state data and theinput signals.
 2. The driving waveform circuit of claim 1, wherein thecrossbar includes wires having diameters less than 100 nm.
 3. Thedriving waveform circuit of claim 1, wherein the crossbar includes wireshaving diameters greater than 100 nm.
 4. The driving waveform circuit ofclaim 1, wherein the crossbar array includes TCNQ material as resistancevariable material.
 5. The driving waveform circuit of claim 1, whereinthe crossbar array includes chalcogenide material as resistance variablematerial.
 6. The driving waveform circuit of claim 1, wherein thecrossbar array includes perovskite material as resistance variablematerial.
 7. The driving waveform circuit of claim 1, wherein thecrossbar array includes rotaxane material as resistance variablematerial.
 8. The driving waveform circuit of claim 1, wherein thesummation circuitry includes an operational amplifier.
 9. The drivingwaveform circuit of claim 8, wherein each of the crossbar rows areelectrically connected to a common inverting terminal of the operationalamplifier via resistors having different values.
 10. The drivingwaveform circuit of claim 1, wherein the summation circuitry includesmultiple operational amplifiers electrically connected to different rowsof the crossbar array.
 11. The driving waveform circuit of claim 1,wherein the input signals are periodic signals with period T and therelative delay timing is less than T.
 12. The driving waveform circuitof claim 1, wherein the input signals are periodic signals with period Tand the relative delay timing is greater than T.
 13. An inkjet printingdevice including the driving waveform circuit of claim 1 and at leastone inkjet actuator driven by the driving waveform circuit.
 14. A deviceincluding the driving waveform circuit of claim 1 and at least onemicromirror driven by the driving waveform circuit.
 15. A deviceincluding the driving waveform circuit of claim 1 and at least onepiezoelectric actuator driven by the driving waveform circuit.
 16. Adevice including the driving waveform circuit of claim 1 and at leastone electromagnetic motor driven by the driving waveform circuit.
 17. Adisplay device including the driving waveform circuit of claim 1 and atleast one electro-optic element driven by the driving waveform circuit.18. An audio device including the driving waveform circuit of claim 1and at least one acoustic element driven by the driving waveformcircuit.
 19. A computing device including the driving waveform circuitof claim 1 and at least one logic element driven by the driving waveformcircuit.
 20. A counting device including the driving waveform circuit ofclaim 1 and at least one counter driven by the driving waveform circuit.